package com.example.expresshelp.util;

import java.util.regex.Matcher;
import java.util.regex.Pattern;

/**
 * 校验类
 */
public class Validator {
	/**
	 * 判断传入的字符串是否有效
	 * @param 传入的字符串 
	 * @return 有效返回true,否则返回false
	 */
	public static boolean isEffective(String str) {
		if(str==null||"".equals(str)||" ".equals(str)||"null".equals(str)||"\n".equals(str)){
			return false;
		}else{
			return true;
		}
	}
	
	/**
	 * 判断传入的字符串是否无效
	 * @param 传入的字符串 
	 * @return 无效返回true,有效返回false
	 */
	public static boolean isNoEffective(String str) {
		if(str==null||"".equals(str)||" ".equals(str)||"null".equals(str)||"\n".equals(str)){
			return true;
		}else{
			return false;
		}
	}
	
	/**
	 * 判断是会否是数字
	 * @param jsonStr	判断内容
	 * @return	
	 */
	public static boolean isNumber(String jsonStr) {
		// TODO Auto-generated method stub
		if(jsonStr == null){
			return false;
		}
		String regex = "-?[0-9]*$";
		return match(regex,jsonStr);
	}
	
	/**
	 * 正则表达式匹配
	 * @param regex 正则表达式字符串
	 * @param str 要匹配的字符串
	 * @return	如果str符合regex表达式格式，返回true,否则返回false
	 */
	private static boolean match(String regex,String str){
		if(str == null){
			return false;
		}
		if(regex == null){
			return false;
		}
		Pattern pattern = Pattern.compile(regex);
		Matcher matcher = pattern.matcher(str);
		return matcher.matches();
	}
}
